#pragma once
#include <iostream>
#include <memory>

#include "b.h"
class A {
public:
    A() = default;
    ~A() { std::cout << "A is deleted" << std::endl; }
    std::shared_ptr<B> _b;
    // std::weak_ptr<B> _b;
};